//
//  LanguageViewController.swift
//  Exchange
//
//  Created by rui on 2018/4/23.
//  Copyright © 2018年 common. All rights reserved.
//

import UIKit

class LanguageOrCurrencyViewController: BaseViewController,UITableViewDelegate,UITableViewDataSource {
    
    var type: SettingType  = .language {
        didSet {
            if type == .currency {
                self.title = kText("法币切换")
            }else if type == .language {
                self.title = kText("语言切换")
            }
            viewModel = SettingSelectViewModel(type: type)
        }
    }
    
    private let kSettingSelectTableViewCell = "SettingSelectTableViewCell"
    
    var viewModel: SettingSelectViewModel!
    
    lazy var tableView: UITableView = {
        let table = UITableView(frame: self.view.bounds, style: .plain)
        table.delegate = self
        table.dataSource = self
        table.register(UINib.init(nibName: kSettingSelectTableViewCell, bundle: nil), forCellReuseIdentifier: kSettingSelectTableViewCell)
        table.themeSeparatorColor = ThemeManager.ThemeColorKeys.separator
        table.themeBackground = ThemeManager.ThemeColorKeys.background
        if self.type == .language {
            table.tableFooterView = UIView()
        }else if self.type == .currency {
            let lab = UILabel()
            lab.text = kText("选择之后,资产总额可以汇总成设置的法币币种")
            lab.textAlignment = .left
            lab.numberOfLines = 0
            lab.height = 44
            lab.width = kSCREEN_WIDTH - 32
            lab.x = 16
            lab.y = 2
            lab.font = UIFont.systemFont(ofSize: 13)
            lab.sizeToFit()
            lab.themeTextColor = ThemeManager.ThemeColorKeys.text3
            table.tableFooterView = lab
        }
        return table
    }()
    

    override func viewDidLoad() {
        super.viewDidLoad()
        initUI()
    }
    
    func initUI() {
        view.addSubview(tableView)
    }
    
    // MARK: - UITableViewDelegate UITableViewDataSource
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return viewModel.dataArray.count
    }
    
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: kSettingSelectTableViewCell, for: indexPath) as! SettingSelectTableViewCell
        cell.configerModel(viewModel.dataArray[indexPath.row])
        return cell
    }
    
    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
        return 44
    }
    
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        viewModel.changeSetting(row: indexPath.row)
        self.tableView.reloadData()
    }


}
